package com.mes.cloud.dao;

import com.mes.cloud.dto.QuartzTaskDTO;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
* 定时任务
* @author wxm
* @Time 2019-6-10
*/
@Mapper
@Repository
public interface QuartzTaskDAO {

    /**
    * 根据条件获取定时任务列表
    * @param condition
    * @return
    * @throws Exception
    */
    List<QuartzTaskDTO> getQuartzTaskList(Map<Object, Object> condition);


    /**
    * 获取定时任务的最大记录数
    * @param condition
    * @return
    * @throws Exception
    */
    long getQuartzTaskCount(Map<Object, Object> condition);

    /**
    * 新增定时任务
    * @param quartzTaskDTO 定时任务对象
    * @return
    */
    long insertQuartzTask(QuartzTaskDTO quartzTaskDTO);

    /**
    * 更新定时任务
    * @param quartzTaskDTO 定时任务对象
    * @return
    */
    long updateQuartzTask(QuartzTaskDTO quartzTaskDTO);

    /**
    * 删除定时任务
    * @param id  定时任务标识
    * @return
    */
    long delQuartzTaskById(Integer id);

    /**
    * 根据定时任务标识获取定时任务
    * @param id  定时任务标识
    * @return
    */
    QuartzTaskDTO getQuartzTaskById(Integer id);
}
